package com.itheima.commons.model.vo;

import lombok.Builder;
import lombok.Data;

/**
 * 给客户端返回的错误状态码
 */
@Data
@Builder
public class ErrorResult {
    private String errCode;
    private String errMessage;

    public static ErrorResult error() {
        return ErrorResult.builder().errCode("999999").errMessage("未知错误,请稍后重试").build();
    }

    public static ErrorResult mobileFormatIncorrect() {
        return ErrorResult.builder().errCode("100001").errMessage("手机号码格式不正确").build();
    }

    public static ErrorResult verificationCodeExpired() {
        return ErrorResult.builder().errCode("100002").errMessage("之前发送的验证码还未失效").build();
    }

    public static ErrorResult verificationCodeCheckError() {
        return ErrorResult.builder().errCode("100003").errMessage("验证码错误").build();
    }

    public static ErrorResult sendCodeMsgError() {
        return ErrorResult.builder().errCode("100004").errMessage("发送短信失败").build();
    }

    public static ErrorResult tokenValid() {
        return ErrorResult.builder().errCode("100005").errMessage("Token是无效的").build();
    }

    public static ErrorResult tokenTimeOut() {
        return ErrorResult.builder().errCode("100006").errMessage("Token已经过期").build();
    }

    public static ErrorResult paramesIsEmpty() {
        return ErrorResult.builder().errCode("100006").errMessage("参数为空").build();
    }

    public static ErrorResult picFormatIncorrect() {
        return ErrorResult.builder().errCode("100007").errMessage("图片格式不正确").build();
    }

    public static ErrorResult picSizeIncorrect() {
        return ErrorResult.builder().errCode("100008").errMessage("图片尺寸过大").build();
    }

    public static ErrorResult recommendUserIsEmpty() {
        return ErrorResult.builder().errCode("200001").errMessage("今日佳人为空").build();
    }

    public static ErrorResult publishContentIsEmpty() {
        return ErrorResult.builder().errCode("300001").errMessage("发布圈子内容不能为空").build();
    }

    public static ErrorResult uploadSmallVideoIsEmpty() {
        return ErrorResult.builder().errCode("400001").errMessage("上传小视频不能为空").build();
    }

    public static ErrorResult userRegistrationFailed() {
        return ErrorResult.builder().errCode("100009").errMessage("用户注册失败, 请重试").build();
    }

    public static ErrorResult sendHXMsgFailed() {
        return ErrorResult.builder().errCode("500001").errMessage("发送环信消息失败,请稍后重试").build();
    }

    public static ErrorResult addFriendFailed() {
        return ErrorResult.builder().errCode("500002").errMessage("添加好友失败").build();
    }

    public static ErrorResult newPhoneNumISAlreadyOccupied() {
        return ErrorResult.builder().errCode("100010").errMessage("新手机号码已经被占用").build();
    }

    public static ErrorResult updateUserLocationFailed() {
        return ErrorResult.builder().errCode("100011").errMessage("更新用户位置失败").build();
    }
    public static ErrorResult TodayCount() {
        return ErrorResult.builder().errCode("600001").errMessage("今日次数已用完").build();
    }

    public static ErrorResult sendVoiceFile() {
        return ErrorResult.builder().errCode("600002").errMessage("上传失败").build();
    }

    public static ErrorResult adminLoginInfoHasEmptyMsg() {
        return ErrorResult.builder().errCode("700001").errMessage("登录信息不能有空").build();

    }

    //验证码生成异常
    public static ErrorResult verificationCodeInitError() {
        return ErrorResult.builder().errCode("700002").errMessage("验证码出错，请稍后重试").build();
    }

    public static ErrorResult loginInfoError() {
        return ErrorResult.builder().errCode("700003").errMessage("账号或密码有误").build();
    }




    public static ErrorResult messagePassError() {
        return ErrorResult.builder().errCode("700004").errMessage("审核通过失败").build();
    }

    //Publish待人工审核
    public static ErrorResult publishWaitingCheck() {
        return ErrorResult.builder().errCode("700005").errMessage("圈子待人工审核").build();
    }
}
